FIG. 1 shows a conventional communication system.
In FIG. 1, the communication system includes a transmitter 1 and a receiver 2. For example, digital audio data (including voice data) in the form of PCM (Pulse Code Modulation) data is supplied to the transmitter 1. The transmitter 1 encodes the supplied PCM data and transmits resultant encoded data to the receiver 2 via a wired or wireless transmission line 3. The receiver 2 decodes the encoded data transmitted from the transmitter 1 into PCM data.
The transmitter 1 includes a signal storage unit 11 and a frame encoder 12. PCM data supplied to the transmitter 1 is temporarily stored in the signal storage unit 11. The frame encoder 12 sequentially reads PCM data frame by frame from the signal storage unit 11. Herein, one frame of PCM data includes a predetermined number N of samples. The frame encoder 12 performs quantization and encoding on the read PCM data and transmits the resultant encoded data via the transmission line 3.
The receiver 2 includes a frame decoder 13. The frame decoder 13 receives the encoded data transmitted from the transmitter 1 and performs inverse quantization and decoding on the received data. The resultant data decoded into PCM data is output.
One known method of encoding/decoding PCM data on a frame-by-frame basis is that according to the MPEG (Moving Picture Experts Groups) standard (the details of which are described, for example, in “MPEG-4 Low Delay Audio Coding based on the AAC Codec”, Presented by Eric Allamanche, Ralf Geiger, Juergen Herre and Thomas Sporer, at the 106th Convention, May 8-11, 1999, Munich and Germany (An Audio Engineering Society Preprint)).
One known method to increase the encoding efficiency of the PCM data in the encoding process performed by the transmitter 1 is to increase the number of samples included in one frame of PCM data (hereinafter, also referred to as the frame length).
However, the increase in the frame length causes the frame encoder 12 to have a delay in starting the process, because the frame encoder 12 cannot start the process until the PCM data with the frame length is completely supplied and stored in the signal storage unit 11. That is, when the frame length is N (samples) and the sampling frequency of PCM data is Fs (Hz), the frame encoder 12 cannot start processing for a period of N/Fs (seconds) after supplying of PCM data to the signal storage unit 11 is started. The delay in starting of the process performed by the frame encoder 12 due to the necessity of waiting until all PDM data with the frame length is completely obtained is called an algorithm delay (principle delay).
Therefore, when the communication system shown in FIG. 1 is applied to an IP (Internet Protocol) telephone system (also called an Internet telephone system), a user of the receiver 2 cannot receive data of a voice uttered by a user of the transmitter 1 at least for a period of N/Fs (seconds) after the user of the transmitter 1 starts the utterance.
More specifically, for example, when the sampling rate of the PCM data is 48000 (Hz), and each frame includes 2048 samples, the algorithm delay is equal to 43 (milliseconds) (=2048/48000).
In addition to the algorithm delay, other delays can occur between the transmitter 1 and the receiver 2 in the system. Examples of such delays include a delay due to an encoding process and a delay that occurs in transmission over the transmission line 3. Therefore, if as large an algorithm delay as about 43 (m sec) occurs, the total delay becomes very large. Such a large total delay can make it difficult to allow smooth communication between users in an IP telephone system or the like in which a real-time two-way communication is needed.
The algorithm delay can be reduced by reducing the length of each frame that is processed at a time by the frame encoder 12 or the frame decoder 13.
However, to realize the frame encoder 12 and the frame decoder 13 at low cost, it is desirable that the frame encoder 12 and the frame decoder 13 be realized using a conventional codec (Compression/Decompression) system.
In the conventional codec system, the change in the frame length that is processed at a time needs a great and difficult modification.